package drds.common.db.sql_mapping.sql_execute;


import drds.common.db.sql_mapping.configuration.Configuration;

import java.util.List;
import java.util.Map;


public interface MapperExecutionContext {

    Configuration getConfiguration();

    <T> T getMapper(Class<T> type);

    //
    int insert(String mapperId);

    int insert(String mapperId, Map<String, Object> parameter);

    int batchInsert(String mapperId, List<Map<String, Object>> parameter);

    //
    int update(String mapperId);

    int update(String mapperId, Map<String, Object> parameter);

    int delete(String mapperId);

    int delete(String mapperId, Map<String, Object> parameter);

    //
    List<Map<String, Object>> selectMapList(String statement, Map<String, Object> parameter);

}
